import request from '@utils/request'
import { APIParams, APIResult } from '@utils/request/type'
import { ServerEnum } from '@/api/enum/server'
import { Announcement, Message, MessageDTO } from '@/api/entity/notice'

// TODO 通知 （系统通知，共享通知）
/**
 * 分页查询
 * @param params
 */
export const getNoticeListByPageAPI = (params: APIParams.Page<MessageDTO>) => request.post<APIResult.Page<Message[]>>(ServerEnum.System + '/message/page', params)

/**
 * 查看通知信息 - 消除红点
 * @param params
 */
export const readNoticeAPI = (params: {
  id: string
}) => request.post(ServerEnum.System + '/message/update2Stats', params)

/**
 * 获取未读通知数量
 */
export const getUnreadCountAPI = () => request.post<APIResult<{
  systemNum: number,
  shareNum: number
}>>(ServerEnum.System + '/message/countNum')

// TODO 公告
/**
 * 公告列表
 * @param params
 */
export const getAnnouncementListAPI = (params: {
  // 是否启用 0-启用 1-停用
  status?: string
}) => request.post<APIResult<Announcement[]>>(ServerEnum.System + '/announcement/list', params)
